﻿using System;
using System.Collections.Generic;
using System.Text;
using com.clinica.business.BE.actcliente;
using com.clinica.business.entities;
using com.clinica.dao.sql;

namespace com.clinica.DL.sql.actcliente
{
    public static class ClienteDL
    {
        public static List<ClienteBE> ObtenerClientes(ClienteBE oCliente)
        {
            List<ClienteBE> lst = new List<ClienteBE>();
            Comando cmd = new Comando();
            cmd.CommandName = "PRC_ObtenerClientes_01";
            cmd.AddParameter("@Tipopersona", oCliente.Tipopersona);
            cmd.AddParameter("@Numerodocidentidad", oCliente.Numerodocidentidad);
            cmd.AddParameter("@Razonsocial", oCliente.Razonsocial);
            lst = (List<ClienteBE>)ElManager.EjecutarStore<ClienteBE>(cmd, DataBase.CLINICA_WEB);
            return lst;
        }
        public static List<ClienteBE> ObtenerCliente(ClienteBE oDoc)
        {
            List<ClienteBE> lst = new List<ClienteBE>();
            Comando cmd = new Comando();
            cmd.CommandName = "PRC_ObtenerCliente_01";
            cmd.AddParameter("@Codcliente", oDoc.Codcliente);
            lst = (List<ClienteBE>)ElManager.EjecutarStore<ClienteBE>(cmd, DataBase.CLINICA_WEB);
            return lst;
        }
        //public static List<DocumentoPagoBE> ObtenerConsumos(DocumentoPagoBE oDoc)
        //{
        //    List<DocumentoPagoBE> lst = new List<DocumentoPagoBE>();
        //    Comando cmd = new Comando();
        //    cmd.CommandName = "PRC_BuscarLiquidacion_01";
        //    cmd.AddParameter("@CodPac", oDoc.CodigoPaciente);
        //    lst = (List<DocumentoPagoBE>)ElManager.EjecutarStore<DocumentoPagoBE>(cmd, DataBase.CLINICA_WEB);
        //    return lst;
        //}
        //public static List<DocumentoPagoBE> ObtenerLiquidacion(DocumentoPagoBE oDoc)
        //{
        //    List<DocumentoPagoBE> lst = new List<DocumentoPagoBE>();
        //    Comando cmd = new Comando();
        //    cmd.CommandName = "PRC_ObtenerLiquidacion_04";
        //    cmd.AddParameter("@Numero", oDoc.NumeroLiq);
        //    lst = (List<DocumentoPagoBE>)ElManager.EjecutarStore<DocumentoPagoBE>(cmd, DataBase.CLINICA_WEB);
        //    return lst;
        //}
        public static List<ClienteBE> ActualizarCliente(int Accion, ClienteBE oDoc)
        {
            List<ClienteBE> lst = new List<ClienteBE>();
            Comando cmd = new Comando();
            cmd.CommandName = "PRC_ActualizarCliente01";
            cmd.AddParameter("@Accion", Accion);
            cmd.AddParameter("@Codcliente", oDoc.Codcliente);
            cmd.AddParameter("@Tipopersona", oDoc.Tipopersona);
            cmd.AddParameter("@Tipocliente", oDoc.Tipocliente);
            cmd.AddParameter("@Tipodocidentidad", oDoc.Tipodocidentidad);
            cmd.AddParameter("@Numerodocidentidad", oDoc.Numerodocidentidad);
            cmd.AddParameter("@Razonsocial", oDoc.Razonsocial);
            cmd.AddParameter("@Estado", oDoc.Estado);
            cmd.AddParameter("@Direccion", oDoc.Direccion);
            //cmd.AddParameter("@Coddepartam", oDoc.Coddepartam);
            //cmd.AddParameter("@Codprovincia", oDoc.Codprovincia);
            cmd.AddParameter("@Coddistrito", oDoc.Coddistrito);
            cmd.AddParameter("@Telefono1", oDoc.Telefono1);
            cmd.AddParameter("@Telefono2", oDoc.Telefono2);
            cmd.AddParameter("@Fax", oDoc.Fax);
            cmd.AddParameter("@Email", oDoc.Email);

            lst = (List<ClienteBE>)ElManager.EjecutarStore<ClienteBE>(cmd, DataBase.CLINICA_WEB);
            return lst;
        }

        public static void EliminarCliente(ClienteBE oCli)
        {
            /****************************************************************************************
             * Sistema    : Sistema de Gestión de Clinica
             * Modulo     : Facturación y Presupuestos
             * Descripción: 
             * Autor      : JPEREZ
             * Fecha      : 2011-06-01
             ****************************************************************************************/

            List<ClienteBE> lst = new List<ClienteBE>();
            Comando cmd = new Comando();
            cmd.CommandName = "PRC_EliminarCliente_01";
            cmd.AddParameter("@Codcliente", oCli.Codcliente);
            lst = (List<ClienteBE>)ElManager.EjecutarStore<ClienteBE>(cmd, DataBase.CLINICA_WEB);
        }
    }
}
